import { IParam } from '../../common';

/**
 * 界面引擎输入参数
 *
 * @export
 * @interface IUIEngineInputParam
 * @template A
 */
export interface IUIEngineInputParam<A> {
	/**
	 * 上下文
	 *
	 * @type {IParam}
	 * @memberof IUIEngineInputParam
	 */
	navContext: IParam;

	/**
	 * 导航参数
	 *
	 * @type {IParam}
	 * @memberof IUIEngineInputParam
	 */
	navParam: IParam;

	/**
	 * 行为数据
	 *
	 * @type {IParam}
	 * @memberof IUIEngineInputParam
	 */
	data: IParam[] | undefined;

	/**
	 * 模型
	 *
	 * @type {IParam[]}
	 * @memberof IUIEngineInputParam
	 */
	detailModel?: IParam[];

	/**
	 * 部件能力
	 *
	 * @type {ICtrlAbility}
	 * @memberof IUIEngineInputParam
	 */
	ability: A;
}
